package capteur;

import java.util.Observable;
import java.util.Observer;

import landinggearsystem.Software;
import composants.Roue;
import controlleur.voyant_control;


/*
Capteur de la roue qui d�tecte quand la roue change de position et envoit cette information vers les voyants (voyant controlleur)
 */

public class roue_capteur implements Observer {

	levier_capteur l;
	Software s;
	voyant_control v;
	Thread th = null;
        Roue r;

	public roue_capteur (Software s){
		this.s=s;
	}

	public void init(Roue roueObserver,levier_capteur capt) {
		roueObserver.addObserver(this);	 // (2) ajout d'observateur
		v = new voyant_control(s);
		l=capt;
	}

    public Roue getR() {
        return r;
    }
        
        

	@Override
	public void update(Observable arg0, Object arg1) {
		// TODO Auto-generated method stub		


		//pose la question de la position � la roue et la position du levier
		r=(Roue)arg1;
		v.set_Pos_roue(r.isMin(),r.isMax());
		v.set_levier(l.get_levier());

		//cr�er un nouveau thread pour les modifications
		if(th==null||th.isAlive()==false){	
			th=new Thread(v);
			th.start();
		}

	}
}
